What is the best database design for managing historical information? [closed]

Posted by Emmad Kareem on Programmers See other posts from Programmers or by Emmad Kareem
Published on 2012-06-25T20:28:58Z Indexed on 2012/06/25 21:23 UTC
Read the original article Hit count: 255

Filed under:

Say you have a Person table with columns such as: ID, FirstName, LastName, BirthCountry, ...etc.

And you want to keep track of changes on such a table. For example, the user may want to see previous names of a person or previous addresses, etc.

The normalized way is to keep names in separate table, addresses in a separate table,...etc. and the main person table will contain only the information that you are not interested in monitoring changes for (such information will be updated in place).

The problem I see here, aside form the coding hassle due to the extensive number of joins required in a real-life situation, is that I have never seen this type of design in any real application (maybe because most did not provide this feature!). So, is there a better way to design this?

Thanks.

© Programmers or respective owner

Related posts about database-design